package com.cheejee.goodscenter.service;

import java.util.List;

import javax.validation.constraints.NotNull;

import org.springframework.validation.annotation.Validated;

import com.cheejee.goodscenter.module.entity.SkuBrandProperties;
import com.cheejee.goodscenter.module.entity.SkuCategoryProperties;
import com.github.pagehelper.Page;

/**
 * @author CARRY
 * @Date 2020年10月29日下午1:14:54
 */
@Validated
public interface SkuCategoryPropertiesService {

	/**
	 * 按id查询SKU分类属性
	 *
	 * @param id
	 * @return
	 */
	SkuCategoryProperties queryById(@NotNull(message = "SKU分类属性ID不能为空") Long id);

	/**
	 * 按条件查询SKU分类属性
	 *
	 * @param skuId SKUid
	 * @param categoryPropertiesTemplateId 属性模板id
	 * @param propertiesName 属性名称
	 * @return
	 */
	Page<SkuCategoryProperties> querySkuCategoryProperties(Long skuId, Integer categoryPropertiesTemplateId, String propertiesName, int pageNum, int pageSize);


	int addSkuCategoryProperties(SkuCategoryProperties properties);
	
	int addSkuCategoryProperties(List<SkuCategoryProperties> properties);

	/**
	 * 修改属性值
	 *
	 * @param properties
	 * @return
	 */
	int changeSkuCategoryPropertiesValue(@NotNull(message = "SKU分类属性ID不能为空")Long propertiesId, @NotNull(message = "SKU分类属性值不能为空")String propertiesValue);

	int deleteSkuCategoryProperties(@NotNull(message = "SKU分类属性ID不能为空")Long... id);
	
	int deleteSkuCategoryPropertiesBySku(Long skuId);
}